package net.ericaro.neojavagen.classes ;
import net.ericaro.neojavagen.classes.ClassModifiers;
import net.ericaro.neojavagen.classes.Interfaces;
import net.ericaro.neojavagen.packages.JavadocComment;
import net.ericaro.neojavagen.classes.ClassDeclaration;
import net.ericaro.neojavagen.classes.ClassBody;
import net.ericaro.neojavagen.classes.TypeParameters;
import net.ericaro.neojavagen.types.Identifier;
import net.ericaro.neojavagen.classes.Super ;

/**
* *<pre> NormalClassDeclaration :
    JavadocComment? ClassModifiers? class Identifier TypeParameters? Super? Interfaces? ClassBody
</pre>
*/
public class NormalClassDeclaration  implements ClassDeclaration {

JavadocComment javadoccomment;
ClassModifiers classmodifiers;
Identifier identifier;
TypeParameters typeparameters;
Super asuper;
Interfaces interfaces;
ClassBody classbody ;

public NormalClassDeclaration( JavadocComment javadoccomment, ClassModifiers classmodifiers, Identifier identifier, TypeParameters typeparameters, Super asuper, Interfaces interfaces, ClassBody classbody ){
	this.javadoccomment = javadoccomment; this.classmodifiers = classmodifiers; this.identifier = identifier; this.typeparameters = typeparameters; this.asuper = asuper; this.interfaces = interfaces; this.classbody = classbody ;
	}public NormalClassDeclaration( Identifier identifier, ClassBody classbody ){
this.identifier = identifier; this.classbody = classbody ;
}


public String toString(){
	StringBuilder stringbuilder = new StringBuilder();
	if (this.javadoccomment !=null ) stringbuilder.append( this.javadoccomment ).append(" ");
if (this.classmodifiers !=null ) stringbuilder.append( this.classmodifiers ).append(" ");
stringbuilder.append( "class" ).append(" ");
stringbuilder.append( this.identifier ).append(" ");
if (this.typeparameters !=null ) stringbuilder.append( this.typeparameters ).append(" ");
if (this.asuper !=null ) stringbuilder.append( this.asuper ).append(" ");
if (this.interfaces !=null ) stringbuilder.append( this.interfaces ).append(" ");
stringbuilder.append( this.classbody ).append(" ") ;
	return stringbuilder.toString();
}

}
